package com.huhu.mapper;

import com.huhu.entity.ArticleInfo;
import com.huhu.entity.vo.ArticleInfoVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface ArticleMapper {
    // 获取我的所有文章
    public List<ArticleInfo> getMyList(@Param("uid") Long uid);

    // 获取我的文章数量
    public int myArtCount(@Param("uid") Long uid);

    // 获取分页列表页
    public List<ArticleInfo> getList(@Param("psize") Integer psize,
                                     @Param("offset") Integer offset);

    // 查询数据库总共有多少条数据(所有文章)
    public int getTotalCount();

    // 添加文章
    int addArticle(ArticleInfo articleInfo);

    // 根据aid获取文章详情
    public ArticleInfo getDetailByAid(Long aid);

    // 修改文章
    public int updateArticle(ArticleInfo articleInfo);

    // 删除文章
    public int deleteArticle(@Param("aid")Long aid,@Param("uid") Long uid);

    // 获取文章详情（多表联查）
    ArticleInfoVO getDetail(Long aid);

    // 更新访问人数
    int updateRCount(Long aid);
}
